Electronic communications, such as e-mail, area convenient method of distributing electronic documents and files. Traditionally, a copy of the file is attached to an e-mail and sent to each recipient. Since copies of the file are distributed to each recipient, who can then recopy or retransmit the file, the sender has no control over the file once it has been sent. In addition, because each file has a memory size, transmission of large files or numerous files consume large amounts of bandwidth. Recently, online data storage services, or cloud storage services, allow users to store files on a remote network. These cloud storage services may also provide a related e-mail service that allows users to send files stored in the remote network. Instead of attaching a file to the e-mail, a sender can insert a uniform resource locator (URL) link into the e-mail, where the link represents the location of the file on the remote network. When recipients click on the link, a web browser window is used to display or download the file. In this manner, files can be exchanged via e-mail without having to create copies of the file.
Cloud storage services may provide users with access control over files stored in the cloud storage service. For example, users may specify that only certain people may access the file, or that people from a certain domain (e.g. somedomain.com) may access the file, or may specify that the general public can access the file. In addition, the user may specify certain levels of access for each authorized individual, e.g. whether the person can read the file only, or can write to the file, or can change the access controls. These rights to files are called access rights. One way of providing access control for a file is to use an access control list (ACL) associated with the file. For example, the ACL may be stored in a file's metadata. The ACL contains a list of individuals or groups authorized to access the file, and their corresponding level of access. The ACL may also contain lists of tokens or keys that, when presented by users, allows certain levels of access. Cloud storage services may provide ACLs or other access control methods for files stored in their network.